package com.battery.system.domain;

import com.battery.common.annotation.Excel;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import tk.mybatis.mapper.annotation.KeySql;

import javax.persistence.Id;
import javax.persistence.Table;
import java.math.BigDecimal;

/**
 * 商户配置对象 ws_merchant_install
 *
 * @author battery
 * @date 2021-01-22
 */
@Table(name = "ws_merchant_install")
public class MerchantInstall {
    private static final long serialVersionUID = 1L;

    /**
     * 对应商户ID
     */
    @Id
    @KeySql(useGeneratedKeys = true)
    private String merchantId;

    /**
     * 提现手续费
     */
    @Excel(name = "提现手续费")
    private BigDecimal txBrokerage;

    /**
     * 提现允许最小金额
     */
    @Excel(name = "提现允许最小金额")
    private BigDecimal txMinPermit;

    /**
     * 身份证反面照
     */
    @Excel(name = "身份证反面照")
    private String idCardOnPicture;

    /**
     * 身份证正面照
     */
    @Excel(name = "身份证正面照")
    private String idCardOffPicture;

    /**
     * 账单明细功能  0 开启 1 关闭
     */
    @Excel(name = "账单明细功能  0 开启 1 关闭")
    private Integer deatilAbility;

    /**
     * 商户提现功能 0 开启 1 关闭
     */
    @Excel(name = "商户提现功能 0 开启 1 关闭")
    private Integer cashoutAbility;

    /**
     * 关联的用户ID
     */
    @Excel(name = "关联的用户ID")
    private String appUserId;

    /**
     * 关联用户的openid
     */
    @Excel(name = "关联用户的openid")
    private String appOpenid;

    /**
     * 真实姓名
     */
    @Excel(name = "真实姓名")
    private String trueName;

    /**
     * 收款方银行卡号【银行卡信息】
     */
    @Excel(name = "收款方银行卡号【银行卡信息】")
    private String encBankNo;

    /**
     * 收款方开户行 银行卡所在开户行编号【银行卡信息】
     */
    @Excel(name = "收款方开户行 银行卡所在开户行编号【银行卡信息】")
    private String bankCode;

    /**
     * 收款方用户名 【银行卡信息】
     */
    @Excel(name = "收款方用户名 【银行卡信息】")
    private String encTrueName;

    /**
     * 是否删除
     */
    @Excel(name = "是否删除")
    private Integer isDelete;

    private String appWxid;

    private int extend;

    private String appAliid;

    public String getAppAliid() {
        return appAliid;
    }

    public void setAppAliid(String appAliid) {
        this.appAliid = appAliid;
    }

    public int getExtend() {
        return extend;
    }

    public void setExtend(int extend) {
        this.extend = extend;
    }

    public String getAppWxid() {
        return appWxid;
    }

    public void setAppWxid(String appWxid) {
        this.appWxid = appWxid;
    }

    public void setMerchantId(String merchantId) {
        this.merchantId = merchantId;
    }

    public String getMerchantId() {
        return merchantId;
    }

    public void setTxBrokerage(BigDecimal txBrokerage) {
        this.txBrokerage = txBrokerage;
    }

    public BigDecimal getTxBrokerage() {
        return txBrokerage;
    }

    public void setTxMinPermit(BigDecimal txMinPermit) {
        this.txMinPermit = txMinPermit;
    }

    public BigDecimal getTxMinPermit() {
        return txMinPermit;
    }

    public void setIdCardOnPicture(String idCardOnPicture) {
        this.idCardOnPicture = idCardOnPicture;
    }

    public String getIdCardOnPicture() {
        return idCardOnPicture;
    }

    public void setIdCardOffPicture(String idCardOffPicture) {
        this.idCardOffPicture = idCardOffPicture;
    }

    public String getIdCardOffPicture() {
        return idCardOffPicture;
    }

    public void setDeatilAbility(Integer deatilAbility) {
        this.deatilAbility = deatilAbility;
    }

    public Integer getDeatilAbility() {
        return deatilAbility;
    }

    public void setCashoutAbility(Integer cashoutAbility) {
        this.cashoutAbility = cashoutAbility;
    }

    public Integer getCashoutAbility() {
        return cashoutAbility;
    }

    public void setAppUserId(String appUserId) {
        this.appUserId = appUserId;
    }

    public String getAppUserId() {
        return appUserId;
    }

    public void setAppOpenid(String appOpenid) {
        this.appOpenid = appOpenid;
    }

    public String getAppOpenid() {
        return appOpenid;
    }

    public void setTrueName(String trueName) {
        this.trueName = trueName;
    }

    public String getTrueName() {
        return trueName;
    }

    public void setEncBankNo(String encBankNo) {
        this.encBankNo = encBankNo;
    }

    public String getEncBankNo() {
        return encBankNo;
    }

    public void setBankCode(String bankCode) {
        this.bankCode = bankCode;
    }

    public String getBankCode() {
        return bankCode;
    }

    public void setEncTrueName(String encTrueName) {
        this.encTrueName = encTrueName;
    }

    public String getEncTrueName() {
        return encTrueName;
    }

    public void setIsDelete(Integer isDelete) {
        this.isDelete = isDelete;
    }

    public Integer getIsDelete() {
        return isDelete;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("merchantId", getMerchantId())
                .append("txBrokerage", getTxBrokerage())
                .append("txMinPermit", getTxMinPermit())
                .append("idCardOnPicture", getIdCardOnPicture())
                .append("idCardOffPicture", getIdCardOffPicture())
                .append("deatilAbility", getDeatilAbility())
                .append("cashoutAbility", getCashoutAbility())
                .append("appUserId", getAppUserId())
                .append("appOpenid", getAppOpenid())
                .append("trueName", getTrueName())
                .append("encBankNo", getEncBankNo())
                .append("bankCode", getBankCode())
                .append("encTrueName", getEncTrueName())
                .append("isDelete", getIsDelete())
                .toString();
    }
}
